/*
 * @Description: for循环
 * 
 * @Author: rendc
 * 
 * @Date: 2025-07-21 09:54:54
 * 
 * @LastEditors: rendc
 * 
 * @LastEditTime: 2025-07-21 11:12:17
 */
public class Test01For {

  // 1. 第一次输出的i是多少 0
  // 2. 循环语句执行几次 5
  // 3. 最后一次输出的i是多少 4
  public static void main(String[] args) {
    for (int i = 0; i < 5; i++) {
      // System.out.println("i:" + i);
      // 1. i = 0 0 < 5 true 输出 i = 0 i++ ： 1
      // 2. i = 1 1 < 5 true 输出 i = 1 i++ ： 2
      // 3. i = 2 2 < 5 true 输出 i = 2 i++ ： 3
      // 4. i = 3 3 < 5 true 输出 i = 3 i++ ： 4
      // 5. i = 4 4 < 5 true 输出 i = 4 i++ ： 5
      // 6. i = 5 5 < 5 false
    }
    // for (int i = 0; i < 3; i++) {
    // int y = i;
    // int n = y--;
    // System.out.println("i:" + ++i);
    // System.out.println("n:" + n--);
    // System.out.println("y:" + y);
    // }
    // 求 1-5 之间的数据和 并把求和结果在控制台输出
    // 1,2,3,4,5
    // 和
    int sum = 0;
    for (int i = 1; i < 6; i++) {
      System.out.println("i:" + i);
      sum = sum + i;// sum += i;
      // 第一次 sum:0 i:1 1 < 6 true 表达式: 0+1=1
      // 第二次 sum:1 i:2 2 < 6 true 表达式: 1+2=3
      // 第三次 ...
    }
    // 把求和结果在控制台输出
    System.out.println("sum:" + sum);
    // 求 1 - 100 之间的偶数之和
    int sum2 = 0;
    for (int i = 1; i <= 100; i++) {
      if (i % 2 == 0) {
        // sum2 += i;
      }
    }
    // 2,4,6,8,10
    // 方式2 修改迭代器的值
    for (int i = 2; i <= 100; i += 2) {
      // System.out.println("i:" + i);
      sum2 += i;
    }
    System.out.println("sum2:" + sum2);
    // for循环特殊写法1
    // for (int i = 0; i < 5; i++) {
    // }
    int i = 0;
    for (; i < 5;) {
      System.out.println("特殊写法：i:" + i);
      i++;
    }
    // for 死循环
    // for (int j = 0; j < 1; j--) {

    // }
    // for (;;) {
    // // 死循环
    // }
    // for循环的大括号中（循环体）中，如果只有1句代码，那么可以省略大括号 但是不建议写
    for (int j = 0; j < 5; j++)
      System.out.println("j:" + j);
    // 同样的 if else 也可以这样 但是不建议写
    if (true)
      System.out.println("true");
  }
}